package cn.jtfadmin.sysmonitor.domain.dto;

import lombok.Data;

import java.io.Serializable;

/**
 * 计算机信息
 * @author jtf
 * @since 0.0.2
 */
@Data
public class ComputerSystemInfoDTO implements Serializable {


    /**
     * 制造商
     */
    protected String manufacturer;

    /**
     * 型号
     */
    protected String model;

    /**
     * 序列号
     */
    protected String serialNumber;

    /**
     * 硬件UUID
     */
    protected String hardwareUUID;


    /**
     * 主板制造商
     */
    protected String baseboardManufacturer;

    /**
     * 主板型号
     */
    protected String baseboardModel;

    /**
     * 主板版本
     */
    protected String baseboardVersion;

    /**
     * 主板序列号
     */
    protected String baseboardSerialNumber;

    /**
     * 固件制造商
     */
    protected String firmwareManufacturer;

    /**
     * 固件名称
     */
    protected String firmwareName;

    /**
     * 固件描述
     */
    protected String firmwareDescription;

    /**
     * 固件版本
     */
    protected String firmwareVersion;

    /**
     * 固件日期
     */
    protected String firmwareReleaseDate;

    public ComputerSystemInfoDTO() {
    }

    public ComputerSystemInfoDTO(String manufacturer, String model, String serialNumber, String hardwareUUID,  String baseboardManufacturer, String baseboardModel, String baseboardVersion, String baseboardSerialNumber, String firmwareManufacturer, String firmwareName, String firmwareDescription, String firmwareVersion, String firmwareReleaseDate) {
        this.manufacturer = manufacturer;
        this.model = model;
        this.serialNumber = serialNumber;
        this.hardwareUUID = hardwareUUID;
        this.baseboardManufacturer = baseboardManufacturer;
        this.baseboardModel = baseboardModel;
        this.baseboardVersion = baseboardVersion;
        this.baseboardSerialNumber = baseboardSerialNumber;
        this.firmwareManufacturer = firmwareManufacturer;
        this.firmwareName = firmwareName;
        this.firmwareDescription = firmwareDescription;
        this.firmwareVersion = firmwareVersion;
        this.firmwareReleaseDate = firmwareReleaseDate;
    }
}
